package 每日一题;

import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;

/**
 * 同 哈希表 242
 * 242. 有效的字母异位词
 */

public class Date1122 {
    /**
     * 利用hashmap key表示单词 value为对应的出现的次数 s进行push t进行判断含有进行删除
     * 最后听过hashtable是否为空来进行判断
     * @param s
     * @param t
     * @return
     */
    public boolean isAnagram(String s, String t) {

        Map<Character,Integer> map=new HashMap<>();
        for (int i=0;i<s.length();i++){
            if (map.containsKey(s.charAt(i))){
                int v =map.get(s.charAt(i));
                map.put(s.charAt(i),v+1);
            }else {
                map.put(s.charAt(i),1);
            }
        }
        for (int i =0;i<t.length();i++){
            if (map.containsKey(t.charAt(i))){
                int v =map.get(t.charAt(i));
                map.put(t.charAt(i),v-1);
            }else {
                return false;
            }
        }

        for (int i=0;i<s.length();i++){
            if (map.get(s.charAt(i)) != 0){
                return false;
            }
        }

        return true;

    }
}
